unit u_FaixaFrete;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uPai, DB, Menus, XPMenu, StdCtrls, Buttons, ExtCtrls, MMJPanel,
  Mask, DBCtrls, FMTBcd, DBClient, Provider, SqlExpr, Grids, DBGrids,
  JvExDBGrids, JvDBGrid, JvExMask, JvToolEdit, JvBaseEdits, JvDBControls;

type
  Tf_FaixaFrete = class(TfPai)
    dbedtFAIXA: TDBEdit;
    lbl1: TLabel;
    JvDBCalcEdit1: TJvDBCalcEdit;
    lbl2: TLabel;
    JvDBGrid1: TJvDBGrid;
    s_faixa: TSQLDataSet;
    p_faixa: TDataSetProvider;
    ds_faixa: TClientDataSet;
    s_faixaID_FAIXAFRETE: TIntegerField;
    s_faixaFAIXA: TStringField;
    s_faixaVALOR_FAIXA: TFloatField;
    ds_faixaID_FAIXAFRETE: TIntegerField;
    ds_faixaFAIXA: TStringField;
    ds_faixaVALOR_FAIXA: TFloatField;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure btnGravarClick(Sender: TObject);
    procedure btnIncluirClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  f_FaixaFrete: Tf_FaixaFrete;

implementation

uses UDm;

{$R *.dfm}

procedure Tf_FaixaFrete.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  if (ds_faixa.Active) then
    ds_faixa.Close;
  inherited;

end;

procedure Tf_FaixaFrete.FormShow(Sender: TObject);
begin
//  inherited;
  if (not ds_faixa.Active) then
    ds_faixa.Open;
end;

procedure Tf_FaixaFrete.FormCreate(Sender: TObject);
begin
//  inherited;

end;

procedure Tf_FaixaFrete.btnGravarClick(Sender: TObject);
begin
  if (ds_faixa.State = dsInsert) then
  begin
    if dm.c_6_genid.Active then
      dm.c_6_genid.Close;
    dm.c_6_genid.CommandText := 'SELECT CAST(GEN_ID(gen_faixafrete, 1) AS INTEGER) AS CODIGO FROM RDB$DATABASE';
    dm.c_6_genid.Open;
    ds_faixaID_FAIXAFRETE.AsInteger := dm.c_6_genid.Fields[0].AsInteger;
    dm.c_6_genid.Close;
  end;
  inherited;

end;

procedure Tf_FaixaFrete.btnIncluirClick(Sender: TObject);
begin
  inherited;
  dbedtFAIXA.SetFocus;
end;

end.
